[BUUCTF]新年快乐
直接打开, 让输flag, 随便试一下

首先D.I.E
查壳
D.I.E
查壳工具: Github

可见是UPX
壳, 就不上脱壳机了,
上x32dbg
手工脱壳

从入口往上翻能看到pushad
,
一般UPX
壳的的pushad
和popad
隔得不远,
往下翻就能找到,也可以使用堆栈平衡法(esp定律法)
来找popad


跟到0x401280里, 看起来没问题, 尝试脱壳,
使用Scylla
插件

OEP
设置为0x401280再IAT Autosearch
,
再get import
, 一切正常, dump
出exe,
再fix dump
刚导出的exe


尝试打开, 正常运行, 说明脱壳成功

再用D.I.E
查看, 已经无壳了

拖进IDA
分析, F5查看伪代码,
就是比较输入与字符串"HappyNewYear!",
所以flag应该就是flag{HappyNewYear!}
验证, flag正确
